热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Python|生成连续元素差异列表

Python|生成连续元素差异列表原文:https://www

Python |生成连续元素差异列表

原文:https://www . geesforgeks . org/python-generate-sequence-element-difference-list/

在使用 python 时,我们通常会遇到许多我们需要在日常工作和开发中解决的问题。特别是在开发中,python 的小任务希望只在一行中执行。我们讨论了一些计算列表的方法,该列表由列表中连续不同的元素组成。

方法#1:使用列表理解
天真的方法可以用来执行,但是由于本文讨论了这个特定问题的一个线性解决方案,我们从列表理解作为执行这个任务的方法开始。

# Python3 code to demonstrate 
# to generate successive difference list 
# using list comprehension
# initializing list 
test_list = [1, 4, 5, 3, 6]
# printing original list 
print ("The original list is : " + str(test_list))
# using list comprehension
# generate successive difference list
res = [test_list[i + 1] - test_list[i] for i in range(len(test_list)-1)]
# printing result
print ("The computed successive difference list is : " + str(res))

输出:

The original list is : [1, 4, 5, 3, 6]
The computed successive difference list is : [3, 1, -2, 3]

方法 2:使用zip()
zip()也可以用于执行类似的任务,并使用负指数的幂将指数元素与其下一个元素进行 zip(),从而计算差异。

# Python3 code to demonstrate 
# to generate successive difference list 
# using zip()
# initializing list 
test_list = [1, 4, 5, 3, 6]
# printing original list 
print ("The original list is : " + str(test_list))
# using zip()
# generate successive difference list
res = [j - i for i, j in zip(test_list[: -1], test_list[1 :])]
# printing result
print ("The computed successive difference list is : " + str(res))

输出:

The original list is : [1, 4, 5, 3, 6]
The computed successive difference list is : [3, 1, -2, 3]

方法三:使用map() + operator.sub
map()可以配合减法运算符来执行这个特定的任务。这会将元素与其下一个元素进行映射,并执行减法运算。可以传递其他运算符来执行所需的操作。

# Python3 code to demonstrate 
# to generate successive difference list 
# using map() + operator.sub
import operator
# initializing list 
test_list = [1, 4, 5, 3, 6]
# printing original list 
print ("The original list is : " + str(test_list))
# using map() + operator.sub
# generate successive difference list
res = list(map(operator.sub, test_list[1:], test_list[:-1]))
# printing result
print ("The computed successive difference list is : " + str(res))

输出:

The original list is : [1, 4, 5, 3, 6]
The computed successive difference list is : [3, 1, -2, 3]

推荐阅读
  • 本文介绍了利用ARMA模型对平稳非白噪声序列进行建模的步骤及代码实现。首先对观察值序列进行样本自相关系数和样本偏自相关系数的计算,然后根据这些系数的性质选择适当的ARMA模型进行拟合,并估计模型中的位置参数。接着进行模型的有效性检验,如果不通过则重新选择模型再拟合,如果通过则进行模型优化。最后利用拟合模型预测序列的未来走势。文章还介绍了绘制时序图、平稳性检验、白噪声检验、确定ARMA阶数和预测未来走势的代码实现。 ... [详细]
  • 本文介绍了在Python3中如何使用选择文件对话框的格式打开和保存图片的方法。通过使用tkinter库中的filedialog模块的asksaveasfilename和askopenfilename函数,可以方便地选择要打开或保存的图片文件,并进行相关操作。具体的代码示例和操作步骤也被提供。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 第四章高阶函数(参数传递、高阶函数、lambda表达式)(python进阶)的讲解和应用
    本文主要讲解了第四章高阶函数(参数传递、高阶函数、lambda表达式)的相关知识,包括函数参数传递机制和赋值机制、引用传递的概念和应用、默认参数的定义和使用等内容。同时介绍了高阶函数和lambda表达式的概念,并给出了一些实例代码进行演示。对于想要进一步提升python编程能力的读者来说,本文将是一个不错的学习资料。 ... [详细]
  • 本文介绍了Python语言程序设计中文件和数据格式化的操作,包括使用np.savetext保存文本文件,对文本文件和二进制文件进行统一的操作步骤,以及使用Numpy模块进行数据可视化编程的指南。同时还提供了一些关于Python的测试题。 ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了logistic回归(线性和非线性)相关的知识,包括线性logistic回归的代码和数据集的分布情况。希望对你有一定的参考价值。 ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • javascript  – 概述在Firefox上无法正常工作
    我试图提出一些自定义大纲,以达到一些Web可访问性建议.但我不能用Firefox制作.这就是它在Chrome上的外观:而那个图标实际上是一个锚点.在Firefox上,它只概述了整个 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 本文介绍了PhysioNet网站提供的生理信号处理工具箱WFDB Toolbox for Matlab的安装和使用方法。通过下载并添加到Matlab路径中或直接在Matlab中输入相关内容,即可完成安装。该工具箱提供了一系列函数,可以方便地处理生理信号数据。详细的安装和使用方法可以参考本文内容。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • Introduction(简介)Forbeingapowerfulobject-orientedprogramminglanguage,Cisuseda ... [详细]
  • Thisworkcameoutofthediscussioninhttps://github.com/typesafehub/config/issues/272 ... [详细]
author-avatar
_Cokoice
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有